<!DOCTYPE html>
<html lang="en">
<head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>Document</title>
</head>
<body>
      <script>
            // 设置cookie项多了两个;
            // function setCookie( name , value , expires , path , domain ){


            // }
            // setCookie( "nihao" , "hello" , "localhost");
            // 把多可选参数的形式优化一下 : 
            // 优化成对象 即可 ;

            // function setCookie( name , value , options ){
            //       var cookie_str = name + "=" + value ; 

            //       if( options.expires ){
            //             var d = new Date() ; 
            //             d.setDate(d.getDate() + options.expires);
            //             cookie_str += ";expires=" + d;
            //       }
            //       if( options.path ){
                      
            //             cookie_str += ";path=" + options.path;
            //       }
            //       if( options.domain ){
                      
            //           cookie_str += ";domain=" + options.domain;
            //       }  
                  
            //       document.cookie = cookie_str;
            // }

            // setCookie( "nihao" , "hello" , {
            //       domain : "localhost"
            // } )

            // 数组每一项都是可以运算的;
            // var arr = [ 1+1 , 2 * 2 , Math.random() > 0.5 ? 10 : 20 ];
            // console.log(arr);
            // 数组和字符串之间可以任意转换;
            // var str = "hello world";
            // str = str.split("").reverse().join("");
            // console.log(str)
            function setCookie( name , value , options ){
                 // options默认值;
                 options = options || {};
                  
                 if(typeof options.expires === "number"){
                   var d = new Date();
                   d.setDate(d.getDate() + options.expires);
                 }
                 return document.cookie = [
                       name + "=" + value,
                       typeof options.expires === "number" ? ";expires=" + d : "" ,
                       typeof options.path === "string" ? ";path=" + options.path : "",
                       typeof options.domain === "string" ? ";domain=" + options.domain : ""  
                 ].join("");
            }

            setCookie( "nihao" , "hello" , {
                  domain : "localhost"
            } )
      </script>
</body>
</html>